let {data,list}=require('./src/mock/index')
// 房源列表
// const list=require('./src/mock/index')
// console.log(list)
const bodyParser=require('body-parser')

const jwt=require('jsonwebtoken')


let auth=""

module.exports={
    devServer:{
        before:(app)=>{
            app.use(bodyParser.json())
            // let auth=Math.random().toString(36).slice(2,6)
            // let auth=
            app.post('/api/data',(req,res)=>{
                const {username,password,authcode}=req.body
                // console.log(authcode,auth)
                // 判断密码验证码
               let lis=data.find(item=>item.username===username&&item.password===password)
               let name= data.find(item=>item.username===username&&item.password===password).name
            //   加密
               const num=jwt.sign(name,'1906A')
               if(authcode!==auth){
                res.send({
                    code:404,
                    mess:'验证码错误',
                   
                })
               }else if(lis){
                  res.send({
                    code:200,
                    mess:'登录成功',
                    // token:111,

                    data:num
                  })
               }else{
                   res.send({
                       code:404,
                       mess:'登录失败'
                   })
               }
            })
            // 获取验证码
            app.post('/api/authcode',(req,res)=>{
                auth=Math.floor(Math.random()*(1000-9999+1)+9999)
                // console.log(num)
                res.send({
                    code:200,
                    data:auth
                })
            })
            // 获取用户信息
            app.post('/api/getUserinfo',(req,res)=>{
                // 获取token加密名字
                const {authorization}=req.headers
                
                // 解密token
                const name=jwt.verify(authorization,'1906A')
          
                // 用户信息
                const userinfo={...data.find(item=>item.name===name)}
             
                // 删除用户密码
                delete userinfo.password
                res.send({
                    code:200,
                    data:userinfo
                })
            })
            // 获取角色列表
            app.post('/api/getuserList',(req,res)=>{
                res.send({
                    code:200,
                    data,
                })
            })
            // 房源列表
            app.post('/api/housinglist',(req,res)=>{
                const {pagesize,pageindex}=req.body
                
            const newlist=list.slice(pagesize*pageindex,(+pageindex+1)*pagesize)
              
                res.send({
                    code:200,
                    list:newlist,
                    lenth:list.length
                })
            })
            // 删除数据
            app.post('/api/detel',(req,res)=>{
                const {id}=req.body
                list=list.filter(v=>v.id!==id)
                res.send({
                    code:200,
                    mess:'删除成功',
                })
            })
            // 编辑
            app.post('/api/page',(req,res)=>{
                let data=list.find(v=>v.id===req.body.id)
                data.title=req.body.title,
                data.address=req.body.address,
                data.price=req.body.price,
                data.state=req.body.state,
                res.send({
                    code:200,
                    data
                })
            })
            // 添加
            app.post('/api/admin',(req,res)=>{
                console.log(req.body)
                list.unshift({
                     id:+new Date(),
                     ...req.body
                 })
                res.send({
                    code:200,
                    mess:'添加成功'
                })
            })
        }
    }
}